Next | Prev | Up | Top | Contents | Index

GRIO System Components

Several components make up the GRIO mechanism: a system daemon, support commands, configuration files, and an application library.

The system daemon is ggd. It is started from the script /etc/rc2.d/S94grio when the system is started. It is always started; unlike some other daemons, it is not turned on and off with the chkconfig command. A lock file is created in the /tmp directory to prevent two copies of the daemon from running simultaneously. Requests for rate guarantees are made to the ggd daemon. The daemon reads the GRIO configuration files /etc/grio_config and /etc/grio_disks.

/etc/grio_config describes the various I/O hardware paths on the system, starting with the system bus and ending with the individual peripherals such as disk and tape drives. It also describes the bandwidth capabilities of each component. The format of this file is described in the section "/etc/grio_config File Format" in this chapter. If you want a soft rate guarantee, you must edit this file. See step 10 in the section "Configuring a System for GRIO" in this chapter for more information.

/etc/grio_disks describes the performance characteristics for the types of disk drives that are supported on the system, including how many I/O operations of each size (64K, 128K, 256K, or 512K bytes) can be executed by each piece of hardware in one second. You can edit the file to add support for new drive types. The format of this file is described in the section "/etc/grio_disks File Format" in this chapter.

The cfg command is used to automatically generate an /etc/grio_config configuration file for a system's configuration. It scans the hardware in the system, the XLV volumes, and the information in the /etc/grio_disks file so that it can generate a performance tree, which is put into /etc/grio_config, for use by the ggd daemon. This performance tree is based on an optimal I/O size specified as an option to the cfg command. A checksum is included at the end of /etc/grio_config by cfg. When the ggd daemon reads the configuration information, it validates the checksum. You can also edit /etc/grio_config to tune the performance characteristics to fit a given application and tell ggd to ignore the checksum. See the section "Modifying /etc/grio_config" in this chapter for more information.

The /usr/lib/libgrio.so libraries contain a collection of routines that enable an application to establish a GRIO session. The library routines are the only way in which an application program can communicate with the ggd daemon. The library also includes a library routine that applications can use to check the amount of bandwidth available on a filesystem. This enables them to quickly get an idea of whether or not a particular reservation might be granted--more quickly than actually making the request.



Next | Prev | Up | Top | Contents | Index